// var o;
// exports.ShopConfig = void 0;
// var AL_GAME_HUA_Common = require("./AL_GAME_HUA_Common");
// var c = (function (e) {
//     function t() {
//         var t = (null !== e && e.apply(this, arguments)) || this;
//         t.configs = [];
//         return t;
//     }
//     __extends(t, e);
//     t.getInstance = function () {
//         return this.instance || (this.instance = new t());
//     };
//     t.prototype.destroy = function () {
//         t.instance = null;
//     };
//     t.prototype.jiazai_peizhi = function () {
//         return __awaiter(this, void 0, Promise, function () {
//             var e;
//             var t;
//             return __generator(this, function (n) {
//                 switch (n.label) {
//                     case 0:
//                         return [4, this.yibu_jiazai_txt_peizhi("Shop")];
//                     case 1:
//                         return (e = n.sent()) ? ((t = e), (this.configs = t), [2, t]) : [2, null];
//                 }
//             });
//         });
//     };
//     t.prototype.huoqu_suoyou_de_peizhi = function () {
//         return this.configs;
//     };
//     t.prototype.jiazai_jingling_zhen_ziyuan = function (e) {
//         return AL_GAME_HUA_Common.Common.loadRes({
//             url: e,
//             type: cc.SpriteFrame
//         });
//     };
//     t.prototype.jiazai_beijing_pifu = function (e) {
//         var t = this.configs[e].bg;
//         return this.jiazai_jingling_zhen_ziyuan(t).then(function (e) {
//             return e;
//         });
//     };
//     t.prototype.jiazai_putong_wangge_pifu = function (e) {
//         var t = this.configs[e].lattice1;
//         return this.jiazai_jingling_zhen_ziyuan(t);
//     };
//     t.prototype.jiazai_dandu_wangge_pifu = function (e) {
//         var t = this.configs[e].lattice2;
//         return this.jiazai_jingling_zhen_ziyuan(t);
//     };
//     t.prototype.jiazai_shangdian_tubiao = function (e) {
//         var t = this.configs[e].shopIcon;
//         return this.jiazai_jingling_zhen_ziyuan(t);
//     };
//     t.prototype.jiazai_shangdian_kuang = function (e) {
//         var t = this.configs[e].shopKuang;
//         return this.jiazai_jingling_zhen_ziyuan(t);
//     };
//     t.prototype.jiazai_shouye_kuang = function (e) {
//         var t = this.configs[e].homeKuang;
//         return this.jiazai_jingling_zhen_ziyuan(t);
//     };
//     t.instance = null;
//     return t;
// })(require("./AL_GAME_HUA_ConfigHandler").ConfigHandler);
// exports.ShopConfig = c;


// 定义全局变量
let singletonInstance;

// 导出 ShopConfig 类
exports.ShopConfig = void 0;

// 引入模块
const CommonModule = require("./AL_GAME_HUA_Common");

// 定义 ShopConfig 类，继承自 ConfigHandler
class ShopConfig extends require("./AL_GAME_HUA_ConfigHandler").ConfigHandler {
    constructor() {
        super();
        // 配置数组
        this.configs = [];
    }

    /**
     * 获取单例实例
     * @returns {ShopConfig} ShopConfig 的单例实例
     */
    static getInstance() {
        if (!this.instance) {
            this.instance = new ShopConfig();
        }
        return this.instance;
    }

    /**
     * 销毁单例实例
     */
    destroy() {
        ShopConfig.instance = null;
    }

    /**
     * 异步加载配置文件
     * @returns {Promise<Array|null>} 返回配置数组或 null
     */
    async jiazai_peizhi() {
        const configData = await this.yibu_jiazai_txt_peizhi("Shop");
        if (configData) {
            this.configs = configData;
            return configData;
        } else {
            return null;
        }
    }

    /**
     * 获取配置数组
     * @returns {Array} 配置数组
     */
    huoqu_suoyou_de_peizhi() {
        return this.configs;
    }

    /**
     * 异步加载精灵帧资源
     * @param {string} url 资源 URL
     * @returns {Promise<cc.SpriteFrame>} 精灵帧
     */
    jiazai_jingling_zhen_ziyuan(url) {
        return CommonModule.Common.loadRes({
            url: url,
            type: cc.SpriteFrame
        });
    }

    /**
     * 异步加载背景皮肤
     * @param {number} index 配置索引
     * @returns {Promise<cc.SpriteFrame>} 背景皮肤
     */
    jiazai_beijing_pifu(index) {
        const bgUrl = this.configs[index].bg;
        return this.jiazai_jingling_zhen_ziyuan(bgUrl);
    }

    /**
     * 异步加载普通网格皮肤
     * @param {number} index 配置索引
     * @returns {Promise<cc.SpriteFrame>} 普通网格皮肤
     */
    jiazai_putong_wangge_pifu(index) {
        const latticeNormalUrl = this.configs[index].lattice1;
        return this.jiazai_jingling_zhen_ziyuan(latticeNormalUrl);
    }

    /**
     * 异步加载单独网格皮肤
     * @param {number} index 配置索引
     * @returns {Promise<cc.SpriteFrame>} 单独网格皮肤
     */
    jiazai_dandu_wangge_pifu(index) {
        const latticeSingleUrl = this.configs[index].lattice2;
        return this.jiazai_jingling_zhen_ziyuan(latticeSingleUrl);
    }

    /**
     * 异步加载商店图标
     * @param {number} index 配置索引
     * @returns {Promise<cc.SpriteFrame>} 商店图标
     */
    jiazai_shangdian_tubiao(index) {
        const shopIconUrl = this.configs[index].shopIcon;
        return this.jiazai_jingling_zhen_ziyuan(shopIconUrl);
    }

    /**
     * 异步加载商店框架
     * @param {number} index 配置索引
     * @returns {Promise<cc.SpriteFrame>} 商店框架
     */
    jiazai_shangdian_kuang(index) {
        const shopKuangUrl = this.configs[index].shopKuang;
        return this.jiazai_jingling_zhen_ziyuan(shopKuangUrl);
    }

    /**
     * 异步加载首页框架
     * @param {number} index 配置索引
     * @returns {Promise<cc.SpriteFrame>} 首页框架
     */
    jiazai_shouye_kuang(index) {
        const homeKuangUrl = this.configs[index].homeKuang;
        return this.jiazai_jingling_zhen_ziyuan(homeKuangUrl);
    }
}

// 初始化静态属性
ShopConfig.instance = null;

// 导出 ShopConfig 类
exports.ShopConfig = ShopConfig;
